package com.shundr.common.http;

import java.util.ArrayList;
import java.util.List;

import org.json.JSONException;

import com.shundr.common.model.FavoriteInfo;
import com.shundr.common.model.HistoryInfo;
import com.shundr.common.model.RecomCargoInfo;
import com.shundr.common.model.SplashInfo;
import com.shundr.common.model.SystemInfo;
import com.shundr.common.model.VersionInfo;
import com.shundr.common.util.JsonUtil;

/**
 * 用户资料
 * @author Administrator
 *
 */
public class CommonParser {
	/**
	 * @param data
	 * @return
	 * @throws JSONException
	 */
	public static VersionInfo parseVersionInfo(String data){
		try {
			VersionInfo info = JsonUtil.fromJson(data, VersionInfo.class);
			return info;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}
	
	/**
	 * 历史列表
	 * parserHistoryList(这里用一句话描述这个方法的作用)
	 * (这里描述这个方法适用条件 – 可选)
	 * @param data
	 * @return
	 * List<HistoryInfo>
	 * @exception
	 * @since  1.0.0
	 */
	public static List<HistoryInfo> parserHistoryList(String data) {
		try {
			List<HistoryInfo> infos = JsonUtil.getList(data, HistoryInfo.class);
			return infos;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return new ArrayList<HistoryInfo>();
	}
	
	/**
	 * 收藏列表
	 * @param data
	 * @return
	 */
	public static List<FavoriteInfo> parserFavoriteList(String data) {
		try {
			List<FavoriteInfo> infos = JsonUtil.getList(data, FavoriteInfo.class);
			return infos;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return new ArrayList<FavoriteInfo>();
	}
	
	/**
	 * 系统列表
	 * @param data
	 * @return
	 */
	public static List<SystemInfo> parserSysList(String data) {
		try {
			List<SystemInfo> infos = JsonUtil.getList(data, SystemInfo.class);
			return infos;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return new ArrayList<SystemInfo>();
	}
	
	/**
	 * 推荐货源列表
	 * parserRecomCargoList(这里用一句话描述这个方法的作用)
	 * (这里描述这个方法适用条件 – 可选)
	 * @param data
	 * @return
	 * List<RecomCargoInfo>
	 * @exception
	 * @since  1.0.0
	 */
	public static List<RecomCargoInfo> parserRecomCargoList(String data) {
		try {
			List<RecomCargoInfo> infos = JsonUtil.getList(data, RecomCargoInfo.class);
			return infos;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return new ArrayList<RecomCargoInfo>();
	}
	
	/**
	 * 首页splash
	 * parserSplash(这里用一句话描述这个方法的作用)
	 * (这里描述这个方法适用条件 – 可选)
	 * @param data
	 * @return
	 * SplashInfo
	 * @exception
	 * @since  1.0.0
	 */
	public static SplashInfo parserSplash(String data){
		try {
			SplashInfo info = JsonUtil.fromJson(data, SplashInfo.class);
			return info;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}
}
